home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 1 / ETO Development Tools 1.iso / Essentials / MacApp Documentation / MacApp AppleLink Messages / MacApp.Tech$ Jul 89 / W0083-Re[2] More on GC-Jul89 < prev    next >
Encoding:
Text File  |  1989-07-18  |  2.0 KB  |  45 lines  |  [TEXT/GEOL]

  1. Item    7132740                         17-July-89        14:21
  2.  
  3. From:   LINS                            Lins, Chuck
  4.  
  5. To:     EVINS1                          Evins, Mikel
  6.  
  7. cc:     MACAPP.TECH$                    MACAPP Tech
  8.  
  9. Sub:    Re: RE: More on GC
  10.  
  11. Geoff and Mikel,
  12.  
  13. As has been pointed out, gc is a very desirable feature to have as a part of
  14. any object-oriented language. As Mikel has reminded us of the fact that gc
  15. systems are hard to write and has intrinsic problems when running within a
  16. real-time application (one reason why Ada™ defines gc to be optional and
  17. dependent on the compiler implementor).
  18.  
  19. GC has to be built in a the language level. It can only be added with extreme
  20. difficulty on top of any existing software system without support from the
  21. compiler. (The authors of ET++, an application framework in C++ similar to
  22. MacApp™, attempted implementation of the mechanism proposed by H.J. Boehm and
  23. M. Wieser in "Garbage Collection in an Uncooperative Environment" and soon
  24. abandoned further work in that direction because of the assignment problem.)
  25.  
  26. The assignment problem is NOT a function of language however. As someone noted,
  27. SmallTalk has assignment AND gc. Niklaus Wirth has developed the language
  28. Oberon (an object-like language using Type Extension) based on Modula-2 in
  29. which gc is prescribed as a part of the language. There is a NEW operation, but
  30. no DISPOSE (or FREE). The compiler is quite capable of invoking the necessary
  31. actions when an assignment occurs.
  32.  
  33. It is probably time for Object-Pascal as a language to be enhanced. Much work
  34. has been done in the area of language design since Object-Pascal was created a
  35. number of years ago. The USES mechanism is one example of an outdated form of
  36. modularity that needs improvement (both Ada™ and Modula-2 have superior program
  37. encapsulation features - even without objects - than Object Pascal due to the
  38. complete textual seperation of interface and implementation). GC is another
  39. area that needs to be addressed at the language level. I'm sure there are
  40. others.
  41.  
  42. Chuck Lins
  43. Apple Computer, Inc.
  44.  
  45.